def generator(max_count: int, start: str = "00:00:00:00:00:00", step: int = 1):
    if len(start) != 17:
        raise ValueError(
            "Invalid MAC address format. Expected format: XX:XX:XX:XX:XX:XX."
        )
    next_mac_int = int(start.replace(":", ""), 16)
    next_mac = start
    for _ in range(max_count):
        yield next_mac
        next_mac_int += step
        next_mac_int %= 0XFFFFFFFFFFFF
        next_mac = ":".join(
            [
                "{:02X}".format((next_mac_int >> (8 * i)) & 0XFF)
                for i in range(5, -1, -1)
            ]
        )
